As the demand for digital transactions has grown, so has the demand for better security and authentication of data. Users may perform digital transactions involving sensitive data frequently, for example, to pay bills, purchase goods, access their bank accounts, etc. When such transactions are requested from an institution, the institution may prompt the users to authenticate themselves through passwords or keys. However, passwords, keys, and the algorithms used to generate them may be stolen by hackers and pirates. In order to protect sensitive data and to stay ahead of hackers and pirates, institutions should consider more advanced security and authentication methods.